package com.my.zl.console.service.autocode;

import com.my.zl.common.dto.ReqDTO;
import com.my.zl.common.dto.advancedQuery.PageQueryDTO;
import com.my.zl.console.entity.autocode.ZlTemplate;
import com.my.zl.console.dto.autocode.template.ReqTemplateAddDTO;
import com.my.zl.console.dto.autocode.template.ReqTemplateDelDTO;
import com.my.zl.console.dto.autocode.template.ReqTemplateEditDTO;
import com.my.zl.console.dto.autocode.template.ReqTemplateQueryDTO;
import com.my.zl.console.dto.autocode.template.ReqTemplateDetailDTO;
import com.my.zl.console.dto.autocode.template.ReqTemplateStateDTO;
import com.my.zl.console.dto.autocode.template.ResTemplateAddDTO;
import com.my.zl.console.dto.autocode.template.ResTemplateDelDTO;
import com.my.zl.console.dto.autocode.template.ResTemplateEditDTO;
import com.my.zl.console.dto.autocode.template.ResTemplateQueryDTO;
import com.my.zl.console.dto.autocode.template.ResTemplateDetailDTO;
import com.my.zl.console.dto.autocode.template.ResTemplateStateDTO;

/**
 * 模板信息
 * @author ZL
 */
public interface ITemplateService {

    /**
     * 查询
     */
    ResTemplateQueryDTO queryTemplateList(ReqTemplateQueryDTO reqInfo,PageQueryDTO page) throws Exception;
    
    /**
     * 详情
     */
    ResTemplateDetailDTO queryTemplateDetail(ReqTemplateDetailDTO reqInfo) throws Exception;
    
    /**
     * 新增
     */
    ResTemplateAddDTO insertTemplateInfo(ReqDTO<ReqTemplateAddDTO> reqInfo) throws Exception;
    
    /**
     * 编辑
     */
    ResTemplateEditDTO updateTemplateInfo(ReqDTO<ReqTemplateEditDTO> reqInfo) throws Exception;
    
    /**
     * 删除
     */
    ResTemplateDelDTO deleteTemplateInfo(ReqDTO<ReqTemplateDelDTO> reqInfo) throws Exception;
    
    /**
     * 更新状态
     */
    ResTemplateStateDTO updateTemplateState(ReqDTO<ReqTemplateStateDTO> reqInfo) throws Exception;
    
    
}